'use strict';
/**
 * 200 成功
 * 400 缺少必要参数
 * 401 缺少权限
 * 404 地址错误或者请求方式不对
 * 409 操作失败
 */

const baseModel = (data, msg, code) => {
  (typeof data === 'string') && ([ msg, data ] = [ data, (typeof msg === 'string') ? undefined : msg ]);
  return { code, msg, data };
};
const _success = (data, msg = '成功操作') => {
  return baseModel(data, msg, 200);
};

const _notFound = (data, msg = '地址错误或者请求方式不对') => {
  return baseModel(data, msg, 404);
};

const _error = (data, msg = '操作失败') => {
  return baseModel(data, msg, 409);
};

const _lack = (data, msg = '缺少参数') => {
  (typeof data === 'string') && (data = `${data}参数格式不正确`);
  return baseModel(data, msg, 400);
};
const _notLogin = (data, msg = 'token已过期,请重新登录!') => {
  return baseModel(data, msg, 401);
};

module.exports = { _success, _notFound, _error, _lack, _notLogin };
